#ifndef VIEWH11686_H
#define VIEWH11686_H

#include <PatternView.h>
#include <QtCore/QVariant>
#include <QtGui/QAction>
#include <QtGui/QApplication>
#include <QtGui/QButtonGroup>
#include <QtGui/QFrame>
#include <QtGui/QHeaderView>
#include <QtGui/QLabel>
#include <QtGui/QListWidget>
#include <QtGui/QMainWindow>
#include <QtGui/QPushButton>
#include <QtGui/QTabWidget>
#include <QtGui/QTableWidget>
#include <QtGui/QWidget>

class AbstractWindow: public QMainWindow
{

public:

    QWidget *centralwidget;
    QTabWidget *tabWidget;
    QWidget *trainTab;
    QListWidget *trainPatternList;
    QFrame *frame1;
    QPushButton *trainLoadButton;
    QPushButton *trainClearButton;
    PatternView *trainPatternView;
    QFrame *frame3;
    QPushButton *trainButton;
    QFrame *frame2;
    QPushButton *trainPrevButton;
    QPushButton *trainNextButton;
    QTableWidget *weightTable;
    QLabel *patternInfo;
    QLabel *weightInfo;
    QWidget *testTab;
    QListWidget *testPatternList;
    QFrame *frame5;
    QPushButton *testPrevButton;
    QPushButton *testNextButton;
    QLabel *inPatternInfo;
    PatternView *testInPatternView;
    QFrame *frame4;
    QPushButton *testLoadButton;
    QPushButton *testClearButton;
    QLabel *outPatternInfo;
    QFrame *frame6;
    QPushButton *testButton;
    PatternView *testOutPatternView;
    QLabel *iterationsLabel;

    AbstractWindow()
    {
        setObjectName(QString::fromUtf8("AbstractWindow"));
        resize(970, 629);
        centralwidget = new QWidget(this);
        centralwidget->setObjectName(QString::fromUtf8("centralwidget"));
        tabWidget = new QTabWidget(centralwidget);
        tabWidget->setObjectName(QString::fromUtf8("tabWidget"));
        tabWidget->setGeometry(QRect(0, 0, 971, 631));
        tabWidget->setAutoFillBackground(false);
        trainTab = new QWidget();
        trainTab->setObjectName(QString::fromUtf8("trainTab"));
        trainPatternList = new QListWidget(trainTab);
        trainPatternList->setObjectName(QString::fromUtf8("trainPatternList"));
        trainPatternList->setGeometry(QRect(10, 100, 131, 431));
        frame1 = new QFrame(trainTab);
        frame1->setObjectName(QString::fromUtf8("frame1"));
        frame1->setGeometry(QRect(10, 10, 131, 81));
        frame1->setFrameShape(QFrame::StyledPanel);
        frame1->setFrameShadow(QFrame::Raised);
        trainLoadButton = new QPushButton(frame1);
        trainLoadButton->setObjectName(QString::fromUtf8("trainLoadButton"));
        trainLoadButton->setGeometry(QRect(20, 10, 92, 31));
        trainClearButton = new QPushButton(frame1);
        trainClearButton->setObjectName(QString::fromUtf8("trainClearButton"));
        trainClearButton->setGeometry(QRect(20, 40, 92, 31));
        trainPatternView = new PatternView(trainTab);
        trainPatternView->setObjectName(QString::fromUtf8("trainPatternView"));
        trainPatternView->setGeometry(QRect(150, 30, 400, 500));
        frame3 = new QFrame(trainTab);
        frame3->setObjectName(QString::fromUtf8("frame3"));
        frame3->setGeometry(QRect(150, 540, 811, 51));
        frame3->setFrameShape(QFrame::StyledPanel);
        frame3->setFrameShadow(QFrame::Raised);
        trainButton = new QPushButton(frame3);
        trainButton->setObjectName(QString::fromUtf8("trainButton"));
        trainButton->setGeometry(QRect(710, 10, 85, 31));
        frame2 = new QFrame(trainTab);
        frame2->setObjectName(QString::fromUtf8("frame2"));
        frame2->setGeometry(QRect(10, 540, 131, 51));
        frame2->setFrameShape(QFrame::StyledPanel);
        frame2->setFrameShadow(QFrame::Raised);
        trainPrevButton = new QPushButton(frame2);
        trainPrevButton->setObjectName(QString::fromUtf8("trainPrevButton"));
        trainPrevButton->setGeometry(QRect(10, 10, 51, 31));
        trainNextButton = new QPushButton(frame2);
        trainNextButton->setObjectName(QString::fromUtf8("trainNextButton"));
        trainNextButton->setGeometry(QRect(70, 10, 51, 31));
        weightTable = new QTableWidget(trainTab);
        weightTable->setObjectName(QString::fromUtf8("weightTable"));
        weightTable->setGeometry(QRect(560, 30, 400, 500));
        patternInfo = new QLabel(trainTab);
        patternInfo->setObjectName(QString::fromUtf8("patternInfo"));
        patternInfo->setGeometry(QRect(150, 10, 111, 16));
        weightInfo = new QLabel(trainTab);
        weightInfo->setObjectName(QString::fromUtf8("weightInfo"));
        weightInfo->setGeometry(QRect(560, 10, 161, 16));
        tabWidget->addTab(trainTab, QString());
        testTab = new QWidget();
        testTab->setObjectName(QString::fromUtf8("testTab"));
        testPatternList = new QListWidget(testTab);
        testPatternList->setObjectName(QString::fromUtf8("testPatternList"));
        testPatternList->setGeometry(QRect(10, 100, 131, 431));
        frame5 = new QFrame(testTab);
        frame5->setObjectName(QString::fromUtf8("frame5"));
        frame5->setGeometry(QRect(10, 540, 131, 51));
        frame5->setFrameShape(QFrame::StyledPanel);
        frame5->setFrameShadow(QFrame::Raised);
        testPrevButton = new QPushButton(frame5);
        testPrevButton->setObjectName(QString::fromUtf8("testPrevButton"));
        testPrevButton->setGeometry(QRect(10, 10, 51, 31));
        testNextButton = new QPushButton(frame5);
        testNextButton->setObjectName(QString::fromUtf8("testNextButton"));
        testNextButton->setGeometry(QRect(70, 10, 51, 31));
        inPatternInfo = new QLabel(testTab);
        inPatternInfo->setObjectName(QString::fromUtf8("inPatternInfo"));
        inPatternInfo->setGeometry(QRect(150, 10, 101, 16));
        testInPatternView = new PatternView(testTab);
        testInPatternView->setObjectName(QString::fromUtf8("testInPatternView"));
        testInPatternView->setGeometry(QRect(150, 30, 400, 500));
        frame4 = new QFrame(testTab);
        frame4->setObjectName(QString::fromUtf8("frame4"));
        frame4->setGeometry(QRect(10, 10, 131, 81));
        frame4->setFrameShape(QFrame::StyledPanel);
        frame4->setFrameShadow(QFrame::Raised);
        testLoadButton = new QPushButton(frame4);
        testLoadButton->setObjectName(QString::fromUtf8("testLoadButton"));
        testLoadButton->setGeometry(QRect(20, 10, 92, 31));
        testClearButton = new QPushButton(frame4);
        testClearButton->setObjectName(QString::fromUtf8("testClearButton"));
        testClearButton->setGeometry(QRect(20, 40, 92, 31));
        outPatternInfo = new QLabel(testTab);
        outPatternInfo->setObjectName(QString::fromUtf8("outPatternInfo"));
        outPatternInfo->setGeometry(QRect(560, 10, 121, 16));
        frame6 = new QFrame(testTab);
        frame6->setObjectName(QString::fromUtf8("frame6"));
        frame6->setGeometry(QRect(150, 540, 811, 51));
        frame6->setFrameShape(QFrame::StyledPanel);
        frame6->setFrameShadow(QFrame::Raised);
        testButton = new QPushButton(frame6);
        testButton->setObjectName(QString::fromUtf8("testButton"));
        testButton->setGeometry(QRect(710, 10, 85, 31));
        testOutPatternView = new PatternView(testTab);
        testOutPatternView->setObjectName(QString::fromUtf8("testOutPatternView"));
        testOutPatternView->setGeometry(QRect(560, 30, 400, 500));
        iterationsLabel = new QLabel(testTab);
        iterationsLabel->setObjectName(QString::fromUtf8("iterationsLabel"));
        iterationsLabel->setGeometry(QRect(820, 10, 141, 20));
        iterationsLabel->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter);
        tabWidget->addTab(testTab, QString());
        setCentralWidget(centralwidget);
        QWidget::setTabOrder(tabWidget, trainLoadButton);
        QWidget::setTabOrder(trainLoadButton, trainClearButton);
        QWidget::setTabOrder(trainClearButton, trainPatternList);
        QWidget::setTabOrder(trainPatternList, trainPrevButton);
        QWidget::setTabOrder(trainPrevButton, trainNextButton);
        QWidget::setTabOrder(trainNextButton, trainButton);
        QWidget::setTabOrder(trainButton, trainPatternView);

        retranslateUi();

        tabWidget->setCurrentIndex(0);
        weightTable->setSortingEnabled(false);
        trainPatternList->setSortingEnabled(false);
        testPatternList->setSortingEnabled(false);

        QMetaObject::connectSlotsByName(this);
    } // setupUi

    void retranslateUi()
    {
        setWindowTitle(QApplication::translate("AbstractWindow", "MainWindow", 0, QApplication::UnicodeUTF8));
        trainLoadButton->setText(QApplication::translate("AbstractWindow", "Load", 0, QApplication::UnicodeUTF8));
        trainClearButton->setText(QApplication::translate("AbstractWindow", "Clear", 0, QApplication::UnicodeUTF8));
        trainButton->setText(QApplication::translate("AbstractWindow", "Train", 0, QApplication::UnicodeUTF8));
        trainPrevButton->setText(QApplication::translate("AbstractWindow", "<<", 0, QApplication::UnicodeUTF8));
        trainNextButton->setText(QApplication::translate("AbstractWindow", ">>", 0, QApplication::UnicodeUTF8));
        patternInfo->setText(QApplication::translate("AbstractWindow", "Input pattern:", 0, QApplication::UnicodeUTF8));
        weightInfo->setText(QApplication::translate("AbstractWindow", "Hopfield Network's weights:", 0, QApplication::UnicodeUTF8));
        tabWidget->setTabText(tabWidget->indexOf(trainTab), QApplication::translate("AbstractWindow", "Train", 0, QApplication::UnicodeUTF8));
        testPrevButton->setText(QApplication::translate("AbstractWindow", "<<", 0, QApplication::UnicodeUTF8));
        testNextButton->setText(QApplication::translate("AbstractWindow", ">>", 0, QApplication::UnicodeUTF8));
        inPatternInfo->setText(QApplication::translate("AbstractWindow", "Input pattern:", 0, QApplication::UnicodeUTF8));
        testLoadButton->setText(QApplication::translate("AbstractWindow", "Load", 0, QApplication::UnicodeUTF8));
        testClearButton->setText(QApplication::translate("AbstractWindow", "Clear", 0, QApplication::UnicodeUTF8));
        outPatternInfo->setText(QApplication::translate("AbstractWindow", "Output pattern:", 0, QApplication::UnicodeUTF8));
        testButton->setText(QApplication::translate("AbstractWindow", "Test", 0, QApplication::UnicodeUTF8));
        iterationsLabel->setText(QString());
        tabWidget->setTabText(tabWidget->indexOf(testTab), QApplication::translate("AbstractWindow", "Test", 0, QApplication::UnicodeUTF8));
    } // retranslateUi

};

#endif // VIEWH11686_H
